<?php
namespace Modules\Admin\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Modules\Admin\Entities\Module;
use Modules\Admin\Http\Requests\ModuleRequest;

class ModuleController extends Controller
{
    //显示列表
    public function index()
    {
        $data = Module::paginate(10);
        return view('admin::module.index', compact('data'));
    }
    //更新模块
	public function updateModule(\ModuleService $moduleService){
    	//在更新之前先获取原来已经被设置为默认的那个模块的数据
		$old_modules=Module::where('is_default','=','1')->first();
		$name=$old_modules?$old_modules['name']:'';
		$modules=$moduleService->update ();
		foreach($modules as $module){
			Module::create([
				'title'=>$module['title'],
				'name'=>$module['name'],
				'is_default'=>$module['name']==$name?1:0,
				'home_access'=>$moduleService->is_homeaccess ($module)
			]);
		}
		session()->flash('success','更新模块成功！');
		return redirect ('/admin/module');
	}
	public function setdefault($id){
		\DB::table('modules')->update(['is_default' => 0]);
		$module=Module::find($id);
		$module->is_default=1;
		$module->save();
		return redirect ()->back();
	}
}
